package com.justcan.demo.cartoon.utils.anim;

/**
 * 动画时钟，可自行扩张更多功能，如快进时间等
 * @author zhanghuijun
 *
 */
public class AnimClock {

	/**
	 * 相隔两帧之间的时间
	 */
	private long mDeltaTime = 0l;
	/**
	 * 上一帧的时间
	 */
	private long mLastFrameTime = 0l;
	/**
	 * 动画所经历的时间
	 */
	private long mAnimTime = 0l;

	/**
	 * 时钟启动，开始或者重新开始
	 */
	public void start() {
		mLastFrameTime = System.currentTimeMillis();
	}

	/**
	 * 刷新帧时调用
	 */
	public void updateFrame() {
		long now = System.currentTimeMillis();
		mDeltaTime = now - mLastFrameTime;
		mAnimTime += mDeltaTime;
		mLastFrameTime = now;
	}

	/**
	 * 获取相隔两帧之间的时间
	 * @return
	 */
	public long getDeltaTime() {
		return mDeltaTime;
	}

	/**
	 * 获取动画总时间
	 * @return
	 */
	public long getAnimTime() {
		return mAnimTime;
	}

}
